package com.ruoyi.storage.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 出库详情对象 exit_detail
 *
 * @author 庞一恺
 * @date 2025-03-13
 */
public class ExitDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 出库明细编号 */
    private Long outBoundDetailNo;

    /** 订单号 */
    @Excel(name = "订单号")
    private String orderNo;

    /** 物品名称 */
    @Excel(name = "物品名称")
    private String rawProductName;

    /** 物品重量 */
    @Excel(name = "物品重量")
    private Long weight;

    /** 重量单位 */
    @Excel(name = "重量单位")
    private String weightUnit;

    /** 件数 */
    @Excel(name = "件数")
    private Long transportQuantity;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 出库单编号 */
    @Excel(name = "出库单编号")
    private Integer exitRecordId;

    /** 批次编号 */
    @Excel(name = "批次编号")
    private String batchId;

    /** 出库类型 */
    @Excel(name = "出库类型")
    private String exitType;

    /** 货源地 */
    @Excel(name = "货源地")
    private String origin;

    /** 物品规格 */
    @Excel(name = "物品规格")
    private String goodSpecification;

    /** 物品种类 */
    @Excel(name = "物品种类")
    private String merchandiseKind;

    /** 生产日期 */
    private Date manufactureDate;

    /** 原仓库id */
    private Integer warehouseId;

    /** 原库区 */
    private Integer areaId;

    public void setOutBoundDetailNo(Long outBoundDetailNo)
    {
        this.outBoundDetailNo = outBoundDetailNo;
    }

    public Long getOutBoundDetailNo()
    {
        return outBoundDetailNo;
    }
    public void setOrderNo(String orderNo)
    {
        this.orderNo = orderNo;
    }

    public String getOrderNo()
    {
        return orderNo;
    }
    public void setRawProductName(String rawProductName)
    {
        this.rawProductName = rawProductName;
    }

    public String getRawProductName()
    {
        return rawProductName;
    }
    public void setWeight(Long weight)
    {
        this.weight = weight;
    }

    public Long getWeight()
    {
        return weight;
    }
    public void setWeightUnit(String weightUnit)
    {
        this.weightUnit = weightUnit;
    }

    public String getWeightUnit()
    {
        return weightUnit;
    }
    public void setTransportQuantity(Long transportQuantity)
    {
        this.transportQuantity = transportQuantity;
    }

    public Long getTransportQuantity()
    {
        return transportQuantity;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setExitRecordId(Integer exitRecordId)
    {
        this.exitRecordId = exitRecordId;
    }

    public Integer getExitRecordId()
    {
        return exitRecordId;
    }
    public void setBatchId(String batchId)
    {
        this.batchId = batchId;
    }

    public String getBatchId()
    {
        return batchId;
    }
    public void setExitType(String exitType)
    {
        this.exitType = exitType;
    }

    public String getExitType()
    {
        return exitType;
    }
    public void setOrigin(String origin)
    {
        this.origin = origin;
    }

    public String getOrigin()
    {
        return origin;
    }
    public void setGoodSpecification(String goodSpecification)
    {
        this.goodSpecification = goodSpecification;
    }

    public String getGoodSpecification()
    {
        return goodSpecification;
    }
    public void setMerchandiseKind(String merchandiseKind)
    {
        this.merchandiseKind = merchandiseKind;
    }

    public String getMerchandiseKind()
    {
        return merchandiseKind;
    }
    public void setManufactureDate(Date manufactureDate)
    {
        this.manufactureDate = manufactureDate;
    }

    public Date getManufactureDate()
    {
        return manufactureDate;
    }
    public void setWarehouseId(Integer warehouseId)
    {
        this.warehouseId = warehouseId;
    }

    public Integer getWarehouseId()
    {
        return warehouseId;
    }
    public void setAreaId(Integer areaId)
    {
        this.areaId = areaId;
    }

    public Integer getAreaId()
    {
        return areaId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("outBoundDetailNo", getOutBoundDetailNo())
                .append("orderNo", getOrderNo())
                .append("rawProductName", getRawProductName())
                .append("weight", getWeight())
                .append("weightUnit", getWeightUnit())
                .append("transportQuantity", getTransportQuantity())
                .append("status", getStatus())
                .append("exitRecordId", getExitRecordId())
                .append("batchId", getBatchId())
                .append("exitType", getExitType())
                .append("origin", getOrigin())
                .append("goodSpecification", getGoodSpecification())
                .append("merchandiseKind", getMerchandiseKind())
                .append("manufactureDate", getManufactureDate())
                .append("warehouseId", getWarehouseId())
                .append("areaId", getAreaId())
                .toString();
    }
}